from time import sleep

import page
from base.base import Base


class PageOrder(Base):

    #打开首页
    def page_order_ckick_index(self):
        sleep(2)
        self.base_index()
    #点击我的购物车
    def apge_order_click_mycart(self):
        self.base_click(page.order_my_cart)
    #点击 全选复选框
    def page_order_click_all_select(self):
        #首先判断是否没选中,如果没选中就进行点击操作，如果选中什么也不做
        if not self.base_find(page.order_all).is_selected():   #is_selected()为判断复选框是否选中
            self.base_click(page.order_all)
    #点击去结算
    def page_order_click_account(self):
        self.base_click(page.order_account)

    #备用查找收货人--》动态解决收货人加载慢的问题
    def page_order_find_person(self):
        self.base_find(page.order_person)

    #点击提交订单
    def page_order_click_submit_order(self):
        self.base_click(page.order_submit)
    #获取 订单提交结果
    def page_order_get_submit_result(self):
        return self.base_get_text(page.order_submit_result)


    #组装订单业务方法
    def page_order(self):
        self.apge_order_click_mycart()
        self.page_order_click_all_select()
        self.page_order_click_account()
        #注意：此处有一个坑 默认收货人在页面加载完成3秒后才出现：解决方式一：使用sleep(5)
        # sleep(5)
        #找到收货人 说明 异步加载完成（收货人信息出现）直接可以继续执行下行代码
        #解决方式二：使用显示等待时长机制，实现 推荐
        self.page_order_find_person()
        self.page_order_click_submit_order()